﻿var ui={
	window:{
		init:function(){
			$(".contentPanel").height($("body").height()-$(".topPanel").height()-$(".toolbar").height()-$("status").height()-30);
			$(".accordion").height($(".navPanel").height()-10);
			$(".accordion .content").height($(".accordion").height()-$(".accordion .caption").height()*$(".accordion .caption").size()-$(".accordion .caption").size()*2);
			$(".workPanel .tabs .box").height($(".navPanel").height()-28);
			//alert($(".tree .root").parent().height() + "        "+$(".tree .root").prev().height());
			$(".tree .root").height($(".accordion .content").height()-$(".tree .option").height()-12);
		},
		hide:function(){
			$(".start .box").hide();
		}
		
	},
	start:{
		init:function(){
			var obj=$(this);
			$(obj).next().toggle();
		}
	},
	shortcut:{
		init:function(){
			$(".shortcut .items li").contextMenu('shortcut_menu', 
				{ 	menuStyle: {
								border:'1px solid #999999'
								
							},
					eventPosY:'clientY',
					onShowMenu:function(e,menu){
						$(menu).css("margin-top","-60px");
						$(menu).next().css("margin-top","-60px");
						return menu;
					},
					shadow:true,
					bindings: {'edit': function(t) {
							var text=$(t).children("a").text();		
						$(t).html("<input class='edit' type='text' value="+text+" />");
						$(t).children().focus();
						$(t).children().blur(function(){
							var text=$(this).val();
							$(this).parent().html("<a href='#' >"+ text + "</a>");
							});
						}
					}
			    }
				
		    );
		},
		create:function(text,src){
			$(".shortcut .items ul").append("<li><a href='"+src+"'>"+text+"</a></li>");
			ui.shortcut.init();
		}
		
	},
	view:{
	init:function(){
			var obj=$(this);
			if($(obj).attr("class")=="c1"){
				$(".topPanel").height(92).show().css("overflow","auto");
				$(".navPanel").hide();
				ui.window.init();
			};
			if($(obj).attr("class")=="c2"){
				$(".topPanel").height(0).css("overflow","hidden").hide();
				$(".navPanel").show();
				ui.window.init();
			};
			if($(obj).attr("class")=="c3"){
				$(".topPanel").height(0).css("overflow","hidden").hide();
				$(".navPanel").hide();
				ui.window.init();
			};
			if($(obj).attr("class")=="c4"){
				$(".topPanel").height(92).show().css("overflow","auto");
				$(".navPanel").show();
				ui.window.init();
			};
		}
	},
	tree:{
		init:function(){
			$(this).next().toggle();
			$(this).parent().toggleClass("on");
		},
		openAll:function(){
			$(".tree .node").addClass("on");

			$(".tree .node").children("span").next().show();
			
		},
		closeAll:function(){
					$(".tree .node").removeClass("on");

			$(".tree .node").children("span").next().hide();
		}
	},
	accordion:{
		init:function(){
			$(".accordion h1.caption").click(function(){
				$(this).parent().children(".content").hide();
				$(this).parent().children("h1.caption").removeClass("on");
				$(this).addClass("on");
				$(this).next().show();
			});
		}
	},
	tabs:{
		init:function(){
		    var obj=$(this)
		    var id=$(obj).parent().children().index($(obj));
		    $(obj).parent().next().children().addClass('on');
		    $(obj).parent().children().removeClass('on');    
		    $(obj).addClass('on');
		    $(obj).parent().parent().next().children().removeClass('on');
		    $(obj).parent().parent().next().children().eq(id).addClass('on');
			
		},
		close:function(){
			var obj=$(this);
			var id=$(obj).parent().parent().children().index($(obj).parent());
			
			if($(this).parent().attr("class")=="on"){
				$(obj).parent().parent().children().eq(id-1).addClass('on');
				$(obj).parent().parent().parent().next().children().eq(id-1).addClass('on');
			}
			$(obj).parent().parent().parent().next().children().eq(id).remove();
			$(obj).parent().remove();
					
		},
		add:function(obj){
	    	$(".tabs").children(".previous").unbind("click");
	    	$(".tabs").children(".next").unbind("click");

			var text=$(obj).text();
			var target=$(obj).attr("href");
			$(".workPanel .tabs .tabs-nav li").removeClass("on");
			$(".workPanel .tabs .tabs-content .box").removeClass("on");
			$(".workPanel .tabs .tabs-nav ul").append("<li class='on'><span>"+text+"</span><a class='close'></a></li>");
			$(".workPanel .tabs .tabs-content").append("<div class='box on'><iframe align='top'  id='ifram' frameborder='0' scrolling='auto' src='"+target+"' crolling='yes'  width='100%' height='100%'  noresize ></iframe></box>");
			$(".workPanel .tabs .tabs-nav li").click(ui.tabs.init);
			$(".workPanel .tabs .tabs-nav li .close").click(ui.tabs.close);
			ui.tabs.move.init($(".workPanel .tabs"));
			$(".workPanel .box").height($(".navPanel").height()-28);
			$(".workPanel .tabs-nav li").contextMenu(
				'tabs_menu',
				{	shadow:true,
					onShowMenu:function(e,menu){
						$(menu).css("margin-top","0px");
						$(menu).next().css("margin-top","0px");
						return menu;
					},
					bindings:{
						'shortcut_create':function(t){
							var index=$(t).parent().children().index(t);
							var text=$(t).children("span").text();
							var src=$(t).parent().parent().next().children().eq(index).children("iframe").attr("src");
							ui.shortcut.create(text,src);
						}
					}
			
			});

		},
		
		move:{
				init:function(obj){
				$(obj).find(".tabs-nav ul").animate({ left: 0 }, 400);
				var tabs_nav_width = $(obj).width();
				var tabs_nav_li_width =0;
				$(obj).find(".tabs-nav li").each(function(i){tabs_nav_li_width +=$(this).width()+2});
				var step=0;
				
				if (tabs_nav_li_width>tabs_nav_width){
					$(obj).find(".move").show();
					$(obj).children(".next").click(function(){
						if(Math.abs(step) <(-(tabs_nav_width-tabs_nav_li_width))){
							step -= $(obj).find(".tabs-nav li").width()+10;
							$(obj).find(".tabs-nav ul").animate({ left: step },200);
						}
					});
					$(obj).children(".previous").click(function(){
						if(step<0 ){
							step += $(obj).find(".tabs-nav li").width()+10;
							$(obj).find(".tabs-nav ul").animate({ left: step }, 200);
						}
	
					});
				}
				else{
					$(obj).find(".move").hide();	
				}
				
			}
			
		}
	
	
	}

}